package com.csist.jobtitleevaluation.controller;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.csist.jobtitleevaluation.mapper.FileEntiyMapper;
import com.csist.jobtitleevaluation.po.FileEntiy;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;

/**
 * <p>
 * 下载中心 前端控制器
 * </p>
 *
 * @author chun
 * @since 2021-11-30
 */
@Controller
@RequestMapping("/downloadcenter")
public class DownloadCenterController {
    @Autowired
    private FileEntiyMapper fileEntiyMapper;

    /**
     * 所有文件
     *
     * @param current 当前页数
     * @return
     */
    @ResponseBody
    @GetMapping("/allFile/{current}")
    public Page<FileEntiy> allFile(@PathVariable("current") Integer current) {
        // 如果为空或者为0，默认设置第一页
        if (current == null || current <= 0) current = 1;

        Page<FileEntiy> page = new Page<>(current, 7);
        // 如果查询出错，则返回空值
        try {
            fileEntiyMapper.selectPage(page, null);
        } catch (Exception e) {
            return null;
        }
        // 返回page对象
        return page;
    }

    /**
     * 文件类型选择
     *
     * @param current  当前页数
     * @param fileType 文件类型
     * @return
     */
    @ResponseBody
    @GetMapping("/fileType/{current}/{fileType}")
    public Page<FileEntiy> fileType(@PathVariable("current") Integer current, @PathVariable("fileType") String fileType) {
        // 如果为空或者为0，默认设置第一页
        if (current == null || current <= 0) current = 1;

        Page<FileEntiy> page = new Page<>(current, 7);
        QueryWrapper<FileEntiy> queryWrapper = new QueryWrapper<>();
        // 查询文件类型为指定的文件类型
        queryWrapper.eq("file_type ", fileType);
        // 如果查询出错，则返回空值
        try {
            fileEntiyMapper.selectPage(page, queryWrapper);
        } catch (Exception e) {
            return null;
        }
        // 返回page对象
        return page;
    }
}
